package com.ltz.model;
// default package

import java.util.Date;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import static javax.persistence.GenerationType.IDENTITY;
import javax.persistence.Id;
import javax.persistence.Table;

import org.codehaus.jackson.map.annotate.JsonSerialize;

import component.JsonDateComponent;
import component.JsonDateTimeComponent;

/**
 * WellBasicData entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "well_basic_data")
public class WellBasicData implements java.io.Serializable {

	// Fields

	private Integer id;
	private Integer groupId;
	private Date dateInput;
	private String owner;
	private String name;
	private String location;
	private String gouzaoLoc;
	private String basisDrill;
	private String objective;
	private String class_;
	private String teamNumber;
	private String method;
	private Date dateBeginDrill;
	private Date dateEndDrill;
	private Date dateFinishWell;
	private Double verticalDepthDesign;
	private Double inclinedDepthDesign;
	private Double verticalDepthReal;
	private Double inclinedDepthReal;
	private String wellLayer;
	private String basisFinishDrill;
	private String remark;
	private String produceMethod;

	// Constructors

	/** default constructor */
	public WellBasicData() {
	}

	// Property accessors
	@Id
	@GeneratedValue(strategy = IDENTITY)
	@Column(name = "id", unique = true, nullable = false)
	public Integer getId() {
		return this.id;
	}

	public void setId(Integer id) {
		this.id = id;
	}
	@JsonSerialize(using=JsonDateTimeComponent.class) 
	@Column(name = "date_input", length = 0)
	public Date getDateInput() {
		return this.dateInput;
	}

	public void setDateInput(Date dateInput) {
		this.dateInput = dateInput;
	}
	@Column(name = "group_id")
	public Integer getGroupId() {
		return groupId;
	}

	public void setGroupId(Integer groupId) {
		this.groupId = groupId;
	}

	@Column(name = "owner", length = 64)
	public String getOwner() {
		return this.owner;
	}

	public void setOwner(String owner) {
		this.owner = owner;
	}

	@Column(name = "name")
	public String getName() {
		return this.name;
	}

	public void setName(String name) {
		this.name = name;
	}

	@Column(name = "location")
	public String getLocation() {
		return this.location;
	}

	public void setLocation(String location) {
		this.location = location;
	}

	@Column(name = "gouzao_loc")
	public String getGouzaoLoc() {
		return this.gouzaoLoc;
	}

	public void setGouzaoLoc(String gouzaoLoc) {
		this.gouzaoLoc = gouzaoLoc;
	}

	@Column(name = "basis_drill")
	public String getBasisDrill() {
		return this.basisDrill;
	}

	public void setBasisDrill(String basisDrill) {
		this.basisDrill = basisDrill;
	}

	@Column(name = "objective")
	public String getObjective() {
		return this.objective;
	}

	public void setObjective(String objective) {
		this.objective = objective;
	}

	@Column(name = "class", length = 64)
	public String getClass_() {
		return this.class_;
	}

	public void setClass_(String class_) {
		this.class_ = class_;
	}

	@Column(name = "team_number", length = 64)
	public String getTeamNumber() {
		return this.teamNumber;
	}

	public void setTeamNumber(String teamNumber) {
		this.teamNumber = teamNumber;
	}

	@Column(name = "method", length = 64)
	public String getMethod() {
		return this.method;
	}

	public void setMethod(String method) {
		this.method = method;
	}
	@Column(name = "date_begin_drill", length = 0)
	public Date getDateBeginDrill() {
		return this.dateBeginDrill;
	}

	public void setDateBeginDrill(Date dateBeginDrill) {
		this.dateBeginDrill = dateBeginDrill;
	}
	@Column(name = "date_end_drill", length = 0)
	public Date getDateEndDrill() {
		return this.dateEndDrill;
	}

	public void setDateEndDrill(Date dateEndDrill) {
		this.dateEndDrill = dateEndDrill;
	}
	@Column(name = "date_finish_well", length = 0)
	public Date getDateFinishWell() {
		return this.dateFinishWell;
	}

	public void setDateFinishWell(Date dateFinishWell) {
		this.dateFinishWell = dateFinishWell;
	}

	@Column(name = "vertical_depth_design", precision = 10)
	public Double getVerticalDepthDesign() {
		return this.verticalDepthDesign;
	}

	public void setVerticalDepthDesign(Double verticalDepthDesign) {
		this.verticalDepthDesign = verticalDepthDesign;
	}

	@Column(name = "inclined_depth_design", precision = 10)
	public Double getInclinedDepthDesign() {
		return this.inclinedDepthDesign;
	}

	public void setInclinedDepthDesign(Double inclinedDepthDesign) {
		this.inclinedDepthDesign = inclinedDepthDesign;
	}

	@Column(name = "vertical_depth_real", precision = 10)
	public Double getVerticalDepthReal() {
		return this.verticalDepthReal;
	}

	public void setVerticalDepthReal(Double verticalDepthReal) {
		this.verticalDepthReal = verticalDepthReal;
	}

	@Column(name = "inclined_depth_real", precision = 10)
	public Double getInclinedDepthReal() {
		return this.inclinedDepthReal;
	}

	public void setInclinedDepthReal(Double inclinedDepthReal) {
		this.inclinedDepthReal = inclinedDepthReal;
	}

	@Column(name = "well_layer", length = 64)
	public String getWellLayer() {
		return this.wellLayer;
	}

	public void setWellLayer(String wellLayer) {
		this.wellLayer = wellLayer;
	}

	@Column(name = "basis_finish_drill")
	public String getBasisFinishDrill() {
		return this.basisFinishDrill;
	}

	public void setBasisFinishDrill(String basisFinishDrill) {
		this.basisFinishDrill = basisFinishDrill;
	}

	@Column(name = "remark", length = 1000)
	public String getRemark() {
		return this.remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	@Column(name = "produce_method", length = 64)
	public String getProduceMethod() {
		return this.produceMethod;
	}

	public void setProduceMethod(String produceMethod) {
		this.produceMethod = produceMethod;
	}

}